1. Field of the Invention
The present invention relates to a supervising apparatus of an ABR (Available Bit Rate) network of an ATM transmission network, in particular, to a cell rate supervising apparatus of ATM cells of an UNI (User-Network Interface) and an NNI (Network Node Interface) of an ABR network.
2. Description of the Related Art
In recent years, as an important technology that accomplishes a B-ISDN (Broad-band Integrated Service Digital Network), an ATM (Asynchronous Transfer Mode) is becoming attractive.
In the ATM network, various service classes are defined depending on transmission rates. Examples of the service classes are a CBR (Constant Bit Rate) service, a VBR (Variable Bit Rate) service, and a UBR (Unspecified Bit Rate) service. In the CBR service, a predetermined fixed transmission band is reserved for a connection between terminal units so that the transmission rate is always constant. In the VBR service, the transmission band is defined with a parameter that is statistically represented and the transmission rate varies in a reserved band. In the UBR service, no transmission band is specifically defined. Recently, an ABR (Available Bit Rate) service is becoming attractive. In the ABR service, no band is reserved. A connection that uses the network shares a blank band. As the transmission rate of the connection, an MCR (Minimum Cell Rate) is assured. In the ABR service, the transmission rate varies between the MCR and the PCR (Peak Cell Rate).
The ABR service is accomplished in such a manner that a user terminal unit increases or decreases a cell transmission rate corresponding to congestion information that is fed back from the network to the user terminal.
FIG. 5 is a schematic diagram for explaining the theory of operation of the ABR service. In FIG. 5, reference numerals 6 and 8 are user terminal units (denoted by ES: End-Systems). Reference numeral 7 is a network unit such as a switch (SW) or a cross connect unit (denoted by XC). A line connected from the user terminal unit 6 to the user terminal unit 8 is referred to as an up line. A line connected from the user terminal unit 8 to the user terminal unit 6 is referred to as a down line. When a data cell is sent from a particular terminal unit to another terminal unit, the orientation of the data cell is referred to as the forward direction. The reverse direction is referred to as the backward direction. When a data cell is sent from the user terminal unit 6 to the user terminal unit 8, the direction of the up line is the forward direction and the direction of the down line is the backward direction. In contrast, when a data cell is sent from the user terminal unit 8 to the user terminal unit 6, the direction of the down line is the forward direction and the direction of the up line is the backward direction.
Assuming that a data cell is sent from the terminal unit 6 to the terminal unit 8, the terminal unit 6 sends the cell to the up line at an ACR (Allowed Cell Rate) or less. At this point, one FRM (Forward-direction Resource Management) cell is sent whenever Nrm (=32) cells are sent. The terminal unit 8 extracts an FRM cell from cells received through the up line and sends a BRM (Backward-direction Resource Management) cell that is the FRM cell sent back to the down line to the terminal unit 6. At this point, the terminal unit 8 may place circuit information thereof as congestion information in the BRM cell.
The network unit 7 places congestion situation of the network as congestion information in the FRM cell or BRM cell. The terminal unit 6 extracts the congestion information from the BRM cell received through the down line, changes the ACR value thereof corresponding to the congestion information, and sends a cell stream with the new ACR value to the up line.
FIG. 6 is a schematic diagram showing a cell format of an RM cell. The cell format of the FRM cell is the same as the cell format of the BRM cell. The FRM cell and the BRM cell are i distinguished with a DIR (Direction) bit (where 0: forward direction, 1: backward direction). A CI (Congestion Identifier) bit, an NI (No-Increase) bit, and an ER (Explicit Rate) area of the cell format can be used for congestion information that the terminal unit 8 or the network unit 7 sends to the user terminal unit 6. When no congestion takes place, the receiving terminal unit and the terminal unit can set "0" to the CI bit. When congestion takes place, the receiving terminal unit and the terminal unit can set "1" to the CI bit. When the user terminal unit can increase the cell transmission rate due to absence of congestion, the receiving terminal unit and the network unit can set "0" to the NI bit. When the user terminal unit cannot increase the cell transmission rate due to presence of congestion, the receiving terminal unit and the network unit can set "1" to the NI bit. When the network unit directly designates a real rate value as the cell transmission rate of the user terminal unit, the network unit can place the rate value to the ER area as an explicit rate value. In the network unit such as an SW and an XC, when "1" has been set to the CI bit of the FRM cell or BRM cell received through the up line or the down line, "0" cannot be set to the CI bit. Likewise, when "1" has been set to the NI bit, "0" cannot be set to the NI bit.
The ABR service can be categorized as two types that are a binary mode and an ER mode depending whether the network places congestion information to the CI bit, the NI bit, or the ER area. In the binary mode, the network unit places the congestion information in only CI bit or NI bit and the PCR in the ER area. In the ER mode, the network unit places the calculated ER value in the ER area. Thus, in the ER mode, the CI bit and the NI bit are not used.
The operation of the terminal unit that supports the ABR service is provided as source operation provisions. The update method of the allowed rate ACR value of the terminal unit is provided whether the CI bit of the received BRM cell is 0 or 1, whether the NI bit is 0 or 1, whether or not there is information to be sent, and whether or not the BRM cell is received. Assuming that the ACR value at the present time is denoted by ACR.sub.-- cur, the difference to the ACR.sub.-- cur is finely provided. When the difference is denoted by .delta.ACR, the ACR value is given by the following formula. EQU ACR=min(ACR.sub.-- cur+.delta.ACR, ER) (1)
The source operation provisions of the terminal unit support both the binary mode and the ER mode (see "Traffic Management Specification," The ATM Forum, Ver 4.0 R11, March 1996, Paragraph 5.10.4, p. 45).
FIG. 7 is a block diagram showing an example of the structure of the terminal unit 6. The terminal unit 6 comprises a send data signal information source 9, a cell assembling circuit 10, cell buffers 11 and 12, a cell disassembling circuit 13, a BRM cell extracting circuit 14, an FRM cell extracting circuit 15, an FRM cell creating circuit 16, a BRM cell creating circuit 17, and an RM cell inserting circuit 18. All cells received from the cell buffer 12 are disassembled by the cell disassembling circuit 13. The BRM cell extracting circuit 14 detects a BRM cell corresponding to the output signal of the cell disassembling circuit 13. The BRM cell extracting circuit 14 overwrites the position of the BRM cell with a bit pattern of a idle cell. The FRM cell extracting circuit 15 detects an FRM cell and overwrites the position of the FRM cell with a bit pattern of a idle cell. With the output signal of the FRM cell extracting circuit 15, a signal sequence of the received data can be obtained.
The BRM cell creating circuit 17 sets "1" to the DIR bit of the bit pattern of the FRM cell extracted by the FRM cell extracting circuit 15 and creates a BRM cell that is output from the terminal unit 6 to the up line. The FRM cell creating circuit 16 creates an FRM cell to be output from the terminal unit 6 to the up line. The cell assembling circuit 10 assembles ATM cells with send data signal created by the send data signal source 9. The RM cell inserting circuit 18 inserts the FRM cell created by the FRM cell creating circuit 16 and the BRM cell created by the BRM cell creating circuit 17 in an ATM cell stream. Thus, the cell stream is sent from the terminal unit 6 to the up line. The cell stream is stored in the cell buffer 11.
An ACR calculating circuit 3 calculates a new ACR value with the CI bit, the NI bit, and the ER value of the BRM cell extracted by the BRM cell extracting circuit 14 corresponding to the source operation provisions. The ACR value is sent to the cell buffer 11. The cell buffer 11 sends a cell with the ACR value or a smaller value. Thus, the cell transmission rate of the up line of the terminal unit 6 satisfies the source operation provisions.
However, when the ACR calculating circuit 3 or the cell buffer 11 of a particular user terminal unit gets defective or the user terminal is set so that the source operation provisions thereof are not satisfied, if cells are sent at an excessive transmission rate, the band of the user terminal unit 6 becomes excessively large. Thus, the bands of the other user terminal units that comply with the source operation provisions are restricted. Thus, an unfair situation takes place between the violated terminal unit and the other terminal units. In addition, the violated traffic of the violated terminal unit may cause congestion in the network, resulting in deteriorating the network quality. To prevent that, a cell rate supervising apparatus that has a policing function that supervises and controls whether each user terminal unit sends cells in the range of the source operation provisions.
As policing calculating algorithms that supervise cell rates in the CBR and VBR services, GCRA (Generic Cell Rate Algorithm), VSA (Virtual Scheduling Algorithm), and CSLBA (Continuous-State Leaky Bucket Algorithm) are known. An UPC (Usage Parameter Control) unit supervises an excessive traffic in the UNI (User-Network Interface) with such an algorithm. An NPC (Network Parameter Control) unit supervises an excessive traffic in the network with the NNI (Network-Node Interface).
Likewise, to supervise the cell rate of the ABR service, DGCRA (Dynamic-GCRA) has been proposed as a policing calculating algorithm.
In the ABR service network, to divide the network in the middle thereof, a VS/VD (Virtual Source/Virtual Destination) unit that is a virtual sending/receiving terminal unit can be disposed (see "Traffic Management Specification," The ATM Forum, Ver. 4.0 R11, March 1996, Paragraph 5.10.7, p. 48). The DGCRA can be used for policing the cell traffic of not only the user terminal unit, but the VS/VD unit. In the following description, for simplicity, the policing of the cell traffic of the user terminal unit will be explained. However, this discussion is applied for the case that the cell traffic of the VS/VD unit is policed.
FIG. 8 is a block diagram showing an example of the structure of a cell rate supervising apparatus with the DGCRA. A DGCRA calculating circuit is disposed as a policing calculating circuit 1. With the DGCRA calculating circuit, the user terminal unit 6 polices cells to be sent to the up line.
The DGCRA calculating circuit is composed of a policing rate PACR calculating circuit 20 and a rate comparing circuit 21. In FIG. 8, reference numeral 2 is a BRM cell detecting circuit. Reference numeral 3 is an ACR calculating circuit. Reference numeral 5 is a non-conforming cell processing circuit. Reference numerals 22 and 23 are BRM cells. Reference numeral 23 is a BRM cell 22 received by the cell rate supervising apparatus 19 and sent to the terminal unit 6 through the down line. Thus, the BRM cell 22 is the same as the BRM cell 23. Reference numeral 24 is a cell to be policed.
When the cell rate supervising apparatus 19 receives a cell from the down line, the cell rate supervising apparatus 19 sends the cell to the terminal unit 6 as it is. In addition, the BRM cell detecting circuit 2 determines whether or not the received cell is a BRM cell. When the received cell is a BRM cell like the BRM cell 22, the ACR calculating circuit 3 calculates a new ACR value of the received cell with the CI bit, the NI bit, and the ER value that are the congestion information of the received cell. The policing rate PACR calculating circuit 20 calculates the policing rate PACR with the ACR value. The rate comparing circuit 21 compares the PCAR value with the cell rate of the cell received by the terminal unit 6 through the up line. When the transmission rate of the cell is smaller than the PACR value, the rate comparing circuit 21 determines that the cell is a conforming cell. In contrast, when the transmission rate of the cell is larger than the PACR value, the rate comparing circuit 21 determines that the cell is a non-conforming cell. The non-conforming cell processing circuit 5 passes a cell that has been determined as a conforming cell by the rate comparing circuit 21. The non-conforming cell processing circuit 5 discards a cell that has been determined as a non-conforming cell by the rate comparing circuit 21 or places a tag thereto.
The ACR calculating circuit 3 calculates a new ACR value with the CI bit, the NI bit, and the ER value of the BRM cell 22. Likewise, the ACR calculating circuit 3 of the terminal unit 6 calculates a new ACR value with the CI bit, the NI bit, and the ER value of the BRM cell. Since the BRM cell 22 has the same CI bit, NI bit, and ER value as those of the BRM cell 23, the ACR value of the BRM cell calculated by the ACR calculating circuit 3 in the cell rate supervising apparatus 19 is the same as the ACR value of the BRM cell 23 calculated by the terminal unit 6.
To determine whether or not the cell transmission rate of the user terminal unit 6 is a rate value within the ACR value calculated by the user terminal unit 6, the cell rate supervising apparatus 19 applies the ACR value calculated by the ACR calculating circuit 3 of the cell rate supervising apparatus 19 to the policing rate PACR. After the BRM cell 23 sent from the cell rate supervising apparatus 19 to the down line is received by the terminal unit 6, the ACR value is changed. Assuming that time of which a cell is sent from the terminal unit 6 to the up line with the new ACR value and then received by the cell rate supervising apparatus 19 is denoted by t2, to apply the ACR value calculated by the ACR calculating circuit 3 of the cell rate supervising apparatus 19 to the policing rate PACR, it is necessary to wait for time t2 after the cell rate supervising apparatus 19 sends the BRM cell 23. To calculate the PACR value considering time t2 of the policing rate PACR calculating circuit 20, methods termed algorithm A and algorithm B have been proposed (see "Traffic Management Specification," The ATM Forum, Ver. 4.0 R11, March 1996, Appendix III, p. 92).
When the related art reference shown in FIG. 8 is applied to the ABR service of the binary mode, if the BRM cell 23 is discarded and thereby lost on the down line between the cell rate supervising apparatus 19 and the terminal unit 6, the ACR value calculated by the ACR calculating circuit 3 of the cell rate supervising apparatus 19 does not match the ACR value calculated by the terminal unit 6. Assuming that the ACR value calculated by the ACR calculating circuit 3 of the cell rate supervising apparatus 19 is denoted by ACRp and that the ACR value calculated by the terminal unit 6 is denoted by ACRs, the relation of ACRp=ACRs is satisfied. When the CI bit of the BRM cell 23 is 1, the ACR calculating circuit 3 of the cell rate supervising apparatus 19 decreases the ACRp. However, since the BRM cell 23 is lost, the congestion information of CI bit=1 is not sent to the terminal unit 6. In the terminal unit 6, ACRs is not changed and the situation of ACRP&lt;ACRs takes place.
In the binary node, since only relative congestion information of one bit is sent, the situation of which ACRP does not match ACRs continues until both the values of ACRP and ACRs become MCR or PCR.
Thus, there is a difference between the policing rate PACR of the cell rate supervising apparatus 19 and the cell transmission rate of the terminal unit 6. Consequently, the cell rate supervising apparatus 19 cannot accurately police cells. For example, when ACRp&lt;ACRs, since the policing rate PACR of the cell rate supervising apparatus 19 is smaller than the cell transmission rate of the terminal unit 6, the cell rate supervising apparatus 19 may treat a cell to be determined as a conforming cell as a non-conforming cell. Thus, the terminal unit 6 has a disadvantage. In contrast, when ACRp&gt;ACRS, since the policing rate PACR of the cell rate supervising apparatus 19 is larger than the cell transmission rate of the terminal unit 6, the policing calculating circuit 1 may treat a cell to be determined as a non-conforming cell as a conforming cell. Thus, the network has a disadvantage. This situation continues until the values of ACRp and ACRs become MCR or PCR.